This invention relates to the field of computer systems. More particularly, a system and methods are provided for increasing the performance of an NFS (Network File System) client when sending requests to an NFS server.
The NFS protocol enables file access to be distributed across a network, so that individual NFS clients submit read and write requests to a central NFS server. The NFS protocol generally operates on top of the RPC (Remote Procedure Call), TCP (Transport Control Protocol) and IP (Internet Protocol) protocols.
Traditional implementations of the NFS protocol require separate messages to be generated and issued from a client for each NFS request. Thus, the more read and/or write requests an NFS client application generates, the greater the processing overhead incurred by the client. In particular, for each request, separate NFS, RPC, TCP and IP headers must be generated, even though the size of each individual request is smaller than some header sizes. In addition to the communication bandwidth consumed for each individual request, significant protocol processing overhead is incurred by the client.